package com.flame.workflow.ru.mapper;

import java.util.List;

import com.flame.workflow.ru.entity.TaskProperty;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * flame_workflow_ru_task_property 流程实例任务属性表
 *
 * @author 吴欣童
 * @since 2023-06-05 14:29:46
 */
@Mapper
public interface TaskPropertyMapper {

    void insert(TaskProperty taskProperty);

    List<TaskProperty> listByInstanceId(@Param("instanceId") Long instanceId);

    List<TaskProperty> listByTaskId(@Param("taskId") Long taskId);

    void updateTaskPropertyValue(@Param("taskId") Long taskId, @Param("propertyKey") String propertyKey,
        @Param("propertyValue") String propertyValue);

    void deleteByTaskId(@Param("taskId") Long taskId);

    void deleteByPropertyKey(@Param("taskId") Long taskId, @Param("propertyKey") String propertyKey);

}